#include "Sim900.h"
configuration Sim900ActiveMessageC
{
	provides interface SplitControl;
	provides interface AMSend[uint8_t amid];
	provides interface Receive[uint8_t amid];
	provides interface Packet;
	provides interface AMPacket;
}
implementation
{
	components Sim900C, Sim900TcpActiveMessageP;
	components SerialActiveMessageC, LedsC, MainC;
	
	Sim900TcpActiveMessageP.Packet -> SerialActiveMessageC.Packet;
	Sim900TcpActiveMessageP.AMPacket -> SerialActiveMessageC.AMPacket;
	Sim900TcpActiveMessageP.Leds -> LedsC;
	Sim900TcpActiveMessageP.Sim900Control -> Sim900C.Sim900Control;
	Sim900TcpActiveMessageP.Sim900DriverLayer -> Sim900C.Sim900DriverLayer;
	
#ifdef SIM900_AM_DEBUG
	components DiagMsgC;
	Sim900TcpActiveMessageP.DiagMsg -> DiagMsgC;
#endif

	MainC.SoftwareInit -> Sim900TcpActiveMessageP.Init;
	
	SplitControl = Sim900TcpActiveMessageP.SplitControl;
	AMSend = Sim900TcpActiveMessageP.AMSend;
	Receive = Sim900TcpActiveMessageP.Receive;
	Packet = SerialActiveMessageC.Packet;
	AMPacket = SerialActiveMessageC.AMPacket;
}